Pen-based computer systems accept input data in the form of pen strokes made by the operator on a tablet or digitizer pad responsive to pressure, proximity or contact of a stylus or pen thereon. The digitizer produces digital output signals corresponding to the horizontal (x) and vertical (y) coordinates of the location of the stylus on the digitizer pad, which coordinates are stored in time sequence in the computer memory. These pen strokes are then analyzed to determine what input they represent; commands, text, drawings, or the like. Since the input data rate may be quite high, some form of data compression is generally desirable, to reduce the amount of memory required to store any sequence of pen stroke data.
One technique for data compression is described in the so-called "JOT" specification, more formally identified as "A Specification for an Ink Storage and Interchange Format" copyrighted by Slate Corporation, and jointly developed with Lotus Development Corporation, GO, Microsoft, Apple, General Magic, and other pen-based computer software developers. The JOT specification addresses the technique of data compression by the storage of deltas, or differences between consecutive coordinates, rather than storage of absolute coordinates. In the JOT specification, optionally ink color and pen size, among other characteristics, may be stored along with the compressed data, but the compression scheme does not require this extraneous data to be stored. Deltas may be stored in 16-bit, 8-bit or 4-bit formats per point. However, a disadvantage of the JOT formats is that they are not capable of achieving desired levels of compression when pen-stroke data is received at a very high rate.
Another compression technique of interest is described in Japan Patent No. JP 62-84327, "Method of Compressing Coordinate Data," issued Apr. 17, 1987, assigned to Seiko Epson Corporation. This technique describes the elimination of noise and redundant information by assuming and applying a simple frame for data compression for a large quantity of coordinate data sampled in time series at the time of data input. While this method is intended for use with pen stroke data, it is not particularly efficient in the compression of data for such applications.
What is needed is an improved compression system for compressing coordinate pen-stroke data received at a high rate from a pen tablet or digitizer pad that significantly reduces the amount of memory required to store the data while retaining the ability to reproduce the original sequence of pen coordinates sampled at the time of data input.